HTMLify
style.css
Views: 7 | Author: cody
* {
box-sizing: border-box;
}
body {
margin: 0;
padding: 0;
cursor: none;
overflow-x: hidden;
height: 100vh;
}
#wrapper {
width: 100%;
height: 100%;
background: #141414;
display: flex;
gap: 1rem;
align-items: center;
justify-content: space-evenly;
}
.cursor {
position: absolute;
background: white;
width: 8px;
height: 8px;
border-radius: 100%;
z-index: 1;
transition: 0.5s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.2s cubic-bezier(0.75, -1.27, 0.3, 2.33) opacity;
user-select: none;
pointer-events: none;
transform: scale(0.8);
}
.cursor::before {
content: "";
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
display: block;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
border-radius: 100%;
opacity: 0;
}
.cursor.active {
opacity: 1;
transform: scale(12);
}
.cursor.active::before {
opacity: 1;
}
.cursor-follower {
position: absolute;
background: rgba(255, 255, 255, 0.1);
width: 40px;
height: 40px;
border-radius: 100%;
z-index: 1;
transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform, 0.4s cubic-bezier(0.75, -1.27, 0.3, 2.33) opacity;
user-select: none;
pointer-events: none;
transform: translate(4px, 4px);
}
.cursor-follower.active {
opacity: 0.3;
transform: scale(0);
}
.portfolio-thumb {
overflow: hidden;
transition: all 0.5s cubic-bezier(0.25, 1, 0.3, 1);
}
.portfolio-thumb img {
max-width: 360px;
aspect-ratio: 1;
object-fit: cover;
opacity: 0.8;
transition: all 0.5s cubic-bezier(0.25, 1, 0.3, 1);
transform-origin: 90% center;
}
.portfolio-item:hover .portfolio-thumb img {
opacity: 1;
transform: scale(1.2);
}
@media (max-width: 768px) {
#wrapper {
flex-direction: column;
}
}